package com.fufan.mtsaas.modules.newtech.xjsreviewclinicalapplicationreport.service.impl;

import com.alibaba.druid.util.StringUtils;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.fufan.mtsaas.modules.common.bo.response.RequestPojo;
import com.fufan.mtsaas.modules.common.bo.response.ResStatus;
import com.fufan.mtsaas.modules.common.bo.response.Result;
import com.fufan.mtsaas.modules.newtech.xjsreviewclinicalapplicationreport.bo.request.XjsReviewAppReportDetailRequest;
import com.fufan.mtsaas.modules.newtech.xjsreviewclinicalapplicationreport.bo.request.XjsReviewAppReportQueryRequest;
import com.fufan.mtsaas.modules.newtech.xjsreviewclinicalapplicationreport.bo.request.XjsReviewAppReportRequest;
import com.fufan.mtsaas.modules.newtech.xjsreviewclinicalapplicationreport.bo.request.XjsReviewAppReportSaveRequest;
import com.fufan.mtsaas.modules.newtech.xjsreviewclinicalapplicationreport.dao.XjsReviewClinicalApplicationReportDao;
import com.fufan.mtsaas.modules.newtech.xjsreviewclinicalapplicationreport.model.XjsReviewClinicalApplicationReport;
import com.fufan.mtsaas.modules.newtech.xjsreviewclinicalapplicationreport.service.XjsReviewClinicalApplicationReportService;
import com.fufan.mtsaas.modules.newtech.xjsreviewmedicaltechnology.dao.XjsReviewMedicalTechnologyDao;
import com.fufan.mtsaas.modules.newtech.xjsreviewmedicaltechnology.model.XjsReviewMedicalTechnology;
import com.fufan.mtsaas.modules.newtech.xjsreviewmedicaltechnologyevaluation.dao.XjsReviewMedicalTechnologyEvaluationDao;
import com.fufan.mtsaas.modules.newtech.xjsreviewmedicaltechnologytracking.dao.XjsReviewMedicalTechnologyTrackingDao;
import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.Primary;
import org.springframework.stereotype.Service;

import com.baomidou.mybatisplus.mapper.Wrapper;

import javax.annotation.Resource;
import java.util.List;
import java.util.Map;

/**
 * 2023年度医疗技术临床应用情况报告表(XjsReviewClinicalApplicationReport)表服务实现类
 *
 * @author Liby
 * @since 2025-01-05 19:46:28
 */
@Service("xjsReviewClinicalApplicationReportServiceImpl")
@Primary
@Slf4j
public class XjsReviewClinicalApplicationReportServiceImpl extends ServiceImpl<XjsReviewClinicalApplicationReportDao, XjsReviewClinicalApplicationReport> implements XjsReviewClinicalApplicationReportService {
    @Resource
    private XjsReviewClinicalApplicationReportDao XjsReviewAppReportDao;
    @Resource
    private XjsReviewMedicalTechnologyDao xjsReviewMedicalTechnologyDao;
    @Resource
    private XjsReviewMedicalTechnologyTrackingDao xjsReviewMedicalTechnologyTrackingDao;
    @Resource
    private XjsReviewMedicalTechnologyEvaluationDao xjsReviewMedicalTechnologyEvaluationDao;
    @Resource
    private XjsReviewClinicalApplicationReportService xjsReviewClinicalApplicationReportService;

    @Override
    public Result doQueryPage(XjsReviewAppReportQueryRequest map) {
        return null;
    }

    @Override
    public Result doSave(XjsReviewAppReportRequest entity) {
        Result result = new Result();
        result.setResStatus(ResStatus.STATUS_WRONGFUL);
        result.setResMsg(ResStatus.STATUS_WRONGFUL_MSG);
        XjsReviewAppReportDao.insert(entity.getXjsReviewAppReportQueryRequest());
        xjsReviewMedicalTechnologyDao.insert(entity.getXjsReviewMedicalTechnologyQueryRequest());
        xjsReviewMedicalTechnologyTrackingDao.insert(entity.getXjsReviewMedicalTechnologyTrackingQueryRequest());
        xjsReviewMedicalTechnologyEvaluationDao.insert(entity.getXjsReviewMedicalTechnologyEvaluationQueryRequest());
        return result;
    }

    @Override
    public Result detail(XjsReviewAppReportDetailRequest entity) {
        Result result = new Result();
        result.setResStatus(ResStatus.STATUS_WRONGFUL);
        result.setResMsg(ResStatus.STATUS_WRONGFUL_MSG);

        return result;
    }

    @Override
    public Result doUpdate(XjsReviewAppReportSaveRequest entity, RequestPojo requestPojo) {
        return null;
    }

    @Override
    public Result doDelete(XjsReviewAppReportQueryRequest map, RequestPojo requestPojo) {
        return null;
    }

}
